re:invent 2023에서 소개된 AWS의 추천 솔루션에 대해
안녕하세요 클래스메소드의 수재입니다.
aws re:invet 2023 의 세션들 중 AWS 솔루션을 이용한 프로젝트 가속화 라는 세션이 있었습니다.
해당 세션에서 소개된 내용과 각 솔루션을 테스트해볼 수 있는 범위 안에서 구축해보며 알아보는 글을 작성해보고자 합니다.
AWS 솔루션이란?
AWS 및 파트너에 의해 구축된 기술적 레퍼런스 모음으로
- 운영 효율, 성능, 신뢰성, 안전성, 비용 대비 높은 효과 등 고객의 요구 사항을 충족하도록 설계
- 전문가에 의해 구축 및 유지 관리
- CloudFormation을 이용하여 빠르게 배포가 가능하기 때문에 가치 실현 시간 단축
등의 장점이 있습니다.
제공하고 있는 솔루션은 AWS 솔루션 라이브러리에서 확인할 수 있습니다.
세션에서 소개된 솔루션
세션에서는 다음 솔루션들이 소개되었습니다.
- AWS Instance scheduler on AWS
- Distributed Load Testing on AWS
- Automated Security Response on AWS
- Quota Monitor for AWS
- Workload Discovery on AWS
- Cognito User Profiles Export Reference Architecture
AWS Instance scheduler on AWS
Amazon EC2 및 Amazon RDS 인스턴스에 대한 시작 및 중지 일정을 구성하여 비용을 관리
보통 운용 환경이 업무 시간 외에 운영되는 경우 불필요한 비용이 발생할 수 있습니다.
근무 시간 외의 밤 시간에 인스턴스를 멈추기만 해도 비용의 약 60%는 절약할 수 있다고 합니다.
이 솔루션은 필요한 시간에 자동으로 시작 및 정지가 되도록 도와주는 솔루션이며 Amazon EC2 및 Amazon RDS 인스턴스를 대상으로 할 수 있습니다.
솔루션에 대해 이해하고 사용하는 방법을 알기 위해서는 솔루션 라이브러리 페이지 설명으로도 충분하지만 상세한 내용을 알고 싶으시다면 공식 가이드를 참고하는 것이 좋습니다.
이 솔루션의 리소스를 실행하는데 발생하는 비용도 가이드에 적혀있습니다.
이 솔루션에 대해서는 예전에 한번 소개했던 적이 있습니다.
Distributed Load Testing on AWS
잠재적 성능 문제를 식별할 수 있도록 대규모 기반의 로드가 있는 상태에서 소프트웨어 애플리케이션 테스트를 자동화 - 솔루션 라이브러리
애플리케이션의 로드 부하 테스트를 하기 위해 제공되는 솔루션입니다.
Fargate를 백엔드로 사용하며 부하를 설정하기 위해 브라우저 상의 대시보드도 제공됩니다.
Taurus라는 오픈 소스 테스트 프레임워크를 사용합니다.
현재는 v2로 v1에서는 배포를 위해서 codebuild나 pipeline을 이용해야 했습니다. 하지만 v2는 ECR에서 이미지를 제공하기 때문에 더 이상 이전처럼 빌드할 필요가 없습니다.
또한 v2부터는 기존 VPC에 배포할 수 있습니다.
주의점으로는 부하테스트를 위해 발생한 대규모 액세스가 DDoS로 오인 될 수도 있기 때문에 미리 AWS에 부하 테스트 신청을 해야합니다.
비용 예시는 공식 문서에 기재되어 있습니다.
가장 많은 비용을 차지하는 부분이 Fargate 이며 한 태스크에 최대 200명의 유저를 가정하고 있습니다.
예로 들면 서울 리전의 2 vCPUs and 4 GB memory Fargate는 1시간에 0.10334 USD 의 비용이 발생합니다.
10시간 정도 1개의 태스크를 실행한다고 가정한다면 0.10334 X 10 = 1.0334 USD + a 의 비용이 발생한다고 생각하면 될 것 같습니다.
Automated Security Response on AWS
이 AWS 솔루션은 AWS Security Hub에서 사용할 수 있는 추가 기능으로, 보안 위협에 대한 산업 규정 준수 표준 및 모범 사례에 따라 미리 정의된 대응 및 해결 작업을 제공합니다.
Securty Hub를 사용하여 보안 기준 위반이 있으면 수동 또는 자동으로 복구할 수 있는 솔루션입니다.
멀티 계정에도 대응하고 있으므로 일반적인 엔터프라이즈 환경에서도 이용할 수 있습니다.
업계 규정 준수 표준 및 모범 사례에 따라 사전 정의된 응답 및 복구를 제공하며 AWS 환경의 보안 내성을 향상시킬 수 있습니다.
사용 방법으로는 Security Hub 관리자 계정에 배포하려는 항목을 개별적으로 선택할 수 있는 고객용 플레이북을 생성합니다.
각 플레이북에는 관리자 계정 또는 멤버 계정 내에서 해결 워크플로를 시작하는 데 필요한 작업이 포함되어 있습니다.
비용은 월 300건 수정에 약 3.3 USD로 이용하실 수 있습니다.
Quota Monitor for AWS
리소스 사용량을 모니터링하여 할당량에 도달할 때 알림 수신
리소스 사용량을 사전에 추적하고 할당량에 도달할 때 이메일 또는 Slack 알림을 보내는 데 도움이 됩니다.
따라서 초과 청구 등으로부터 사용자를 보호가기 위해 할당량을 설정하는데 유용합니다.
Qutota의 상한선을 눈치채지 못하고 확장에 실패하는 상황을 피하기 위해서는 해당 솔루션을 이용하는 것이 좋습니다.
배포 옵션으로는 organization을 이용하는 버전과 이용하지 않는 버전이 있습니다.
다만 Trusted Advisor를 통해 할당량 사용 모니터링을 사용하는 솔루션이기 때문에 전제조건으로 각 계정에 비즈니스 또는 엔터프라이즈 수준 AWS Support가 있어야 합니다.
비용 자체는 10개의 계정/25개의 리전 기준으로 52.35 USD 가 발생하지만 대상 리전을 축소하는 것으로 비용을 절약할 수 있을 것으로 보입니다.
Workload Discovery on AWS
여러 계정과 다양한 리전에 있는 AWS 리소스의 인벤토리 유지 관리
간단히 말해 AWS 클라우드 워크로드를 시각화하는 솔루션입니다.
AWS의 라이브 데이터를 기반으로 워크로드의 세부 아키텍처 다이어그램을 생성, 사용자 지정 및 공유합니다.
이름, 태그, 이름, IP 주소 등으로 리소스를 검색할 수 있습니다.
또한 AWS 비용 및 사용 보고서(CUR) 쿼리도 가능하며 아키텍처 다이어그램에 표시할 수 있습니다.
사용을 위해 단일 인스턴스를 배포하는 경우 시간 당 약 0.586 USD 의 비용이 발생합니다.
Cognito User Profiles Export Reference Architecture
Amazon Cognito 사용자 풀의 사용자 프로필 및 그룹 정보를 내보내는 프레임워크 구축
Cognito의 사용자 정보 및 그룹 정보를 DynamoDB의 글로벌 테이블에 저장할 수 있으며 여러 리전에서 백업 및 복원할 수 있습니다.
따라서 ID 관리의 내결함성을 더욱 높일 수 있습니다.
이 솔루션은 사용자 암호와 같은 민감한 정보를 내보내지 않습니다.
또한 다중 인증(MFA)이 활성화되어 있고 고급 보안 기능이 있는 사용자 풀을 지원하지 않는 등 제한 사항이 있으므로 공식 문서를 참고하시는 것을 추천합니다.
복원하는 경우 기본 및 백업 지역 모두 새로 배포할 수 있습니다.
유저 50만명에 약 90 USD 의 비용이 발생합니다.
마무리
내용을 읽어보니 평소에 불편함을 많이 느끼는 내용들이며 이에 대해 확실히 도움이 될만한 솔루션이라고 생각되었습니다.
다만 여러 서비스를 종합적으로 사용하다보니 예상보다도 많은 비용이 발생할 수도 있습니다.
따라서 해당 솔루션들을 이용할 때에는 Cost Explorer 등에서 비용에 대한 알람을 설정하거나 각 서비스에서 발생하는 비용을 제대로 확인하는 것을 추천합니다.
긴 글 읽어주셔서 감사합니다.
내용 피드백 및 오탈자는 must01940 지메일로 보내주시면 감사합니다.